﻿using System;
using System.Collections.Generic;
using System.IO;
using System.Web;
using Rabbit.Logic;
using RabbitShop.Code;
using Raven.Imports.Newtonsoft.Json;

namespace RabbitShop.Action
{
    public partial class CartSet : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {
            string uid = string.Empty;
            if (Request.Cookies[Constant.CookieName] != null)
            {
                uid = Request.Cookies[Constant.CookieName].Values[Constant.CookieUid];
                if (string.IsNullOrEmpty(uid)) Response.Redirect("~/UI/UserLogon.aspx");
            }
            else
            {
                Response.Redirect("~/UI/UserLogon.aspx");
            }


            Stream postData = Request.InputStream;
            StreamReader sRead = new StreamReader(postData);
            string postContent = sRead.ReadToEnd();
            sRead.Close();

            if (!string.IsNullOrEmpty(postContent))
            {
                try
                {
                    List<ShopCartItem> item = JsonConvert.DeserializeObject<List<ShopCartItem>>(postContent);

                    Customer customer = RabbitUse.GetCustomerById(Db.Store, uid);
                    customer.Cart = item;
                    RabbitUse.AddOrUpdateCustomer(Db.Store, customer);

                    Logic.UpdateCookieCartNo(this, customer.Cart.Count.ToString());

                    Response.Write("true");
                }
                catch (Exception ex)
                {
                    Response.Write(ex.Message);
                }

            }
            else
            {
                Response.Write("false");
            }
        }
    }
}